package org.game.module.herobo;

import com.sojoys.artifact.exception.AbstractLogicModelException;
import com.sojoys.artifact.factory.session.ISession;
import com.sojoys.artifact.core.IModule;
/** 
 * 英雄
 */
public interface HeroBO extends IModule {
	byte classCode = 4;
	
	/** 取得英雄信息 [code = 1025] */
	short getHeros = 1025; 
	/** 发送英雄 [code = 1026] */
	short sendHero = 1026; // 推送类型
	/** 英雄升级 [code = 1027] */
	short heroUpgrade = 1027; 
	/** 英雄突破 [code = 1028] */
	short heroAdvance = 1028; 
	/** 英雄经验信息 [code = 1029] */
	short pushHeroExp = 1029; // 推送类型
	/** 发送一个到多个英雄 [code = 1030] */
	short sendHeros = 1030; // 推送类型
	/** 合成英雄 [code = 1031] */
	short heroCompose = 1031; 
	/** 天使觉醒 [code = 1032] */
	short angelWake = 1032; 
	/** 天使加点 [code = 1033] */
	short angelAddBit = 1033; 
	/** 天使重置 [code = 1034] */
	short angelReset = 1034; 
	/** 英雄进阶 [code = 1035] */
	short upQuality = 1035; 
	/** 更换英雄皮肤 [code = 1036] */
	short changeHeroSkin = 1036; 
	
	
	/** 取得英雄信息 [code = 1025] */
	byte[] getHeros(ISession session) throws AbstractLogicModelException;
	
	
	/** 英雄升级 [code = 1027] */
	byte[] heroUpgrade(ISession session, org.game.protobuf.c2s.C2SHeroMsg.HeroUpgrade heroUpgrade) throws AbstractLogicModelException;
	
	/** 英雄突破 [code = 1028] */
	byte[] heroAdvance(ISession session, org.game.protobuf.c2s.C2SHeroMsg.HeroAdvance heroAdvance) throws AbstractLogicModelException;
	
	
	
	/** 合成英雄 [code = 1031] */
	byte[] heroCompose(ISession session, org.game.protobuf.c2s.C2SHeroMsg.HeroCompose heroCompose) throws AbstractLogicModelException;
	
	/** 天使觉醒 [code = 1032] */
	byte[] angelWake(ISession session, org.game.protobuf.c2s.C2SHeroMsg.ReqAngelWake msg) throws AbstractLogicModelException;
	
	/** 天使加点 [code = 1033] */
	byte[] angelAddBit(ISession session, org.game.protobuf.c2s.C2SHeroMsg.ReqAngelAddBit msg) throws AbstractLogicModelException;
	
	/** 天使重置 [code = 1034] */
	byte[] angelReset(ISession session, org.game.protobuf.c2s.C2SHeroMsg.ReqAngelReset msg) throws AbstractLogicModelException;
	
	/** 英雄进阶 [code = 1035] */
	byte[] upQuality(ISession session, org.game.protobuf.c2s.C2SHeroMsg.ReqUpQuality msg) throws AbstractLogicModelException;
	
	/** 更换英雄皮肤 [code = 1036] */
	byte[] changeHeroSkin(ISession session, org.game.protobuf.c2s.C2SHeroMsg.ReqChangeHeroSkin msg) throws AbstractLogicModelException;
	
}